Skip to content

[Draft] Upgrade to eslint v9#2709

Closed
gokulprasanth-ni wants to merge 6 commits intomainfrom
users/gokulprasanthRavi/feat/update-to-flat-eslint-config
Closed

[Draft] Upgrade to eslint v9#2709
gokulprasanth-ni wants to merge 6 commits intomainfrom
users/gokulprasanthRavi/feat/update-to-flat-eslint-config

Conversation

@gokulprasanth-ni
Copy link
Copy Markdown
Contributor

Pull Request

🤨 Rationale

  • Update nimble packages to support flat eslint configuration format

👩‍💻 Implementation

  • converted the legacy eslint configs to flat config format.
  • Updated the dependencies version to be compatible with eslint v9.

🧪 Testing

✅ Checklist

  • [] I have updated the project documentation to reflect my changes or determined no changes are needed.

Signed-off-by: gokulprasanth-ni <131153319+gokulprasanth-ni@users.noreply.github.com>
Signed-off-by: gokulprasanth-ni <131153319+gokulprasanth-ni@users.noreply.github.com>
Signed-off-by: gokulprasanth-ni <131153319+gokulprasanth-ni@users.noreply.github.com>
Signed-off-by: gokulprasanth-ni <131153319+gokulprasanth-ni@users.noreply.github.com>
Signed-off-by: gokulprasanth-ni <131153319+gokulprasanth-ni@users.noreply.github.com>
Signed-off-by: gokulprasanth-ni <131153319+gokulprasanth-ni@users.noreply.github.com>
@@ -0,0 +1,48 @@
import { fileURLToPath } from 'url';
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are too many changes in one shot. One thing to note is that packages do not need to migrate to "type": "module" in order to adopt eslint v9. Those can be decoupled, see the discussion here: ni/javascript-styleguide#170 (comment)

If the changes are minor outside the nimble repo then it may be fine but we should not switch the packages in nimble.

Copy link
Copy Markdown
Member

@rajsite rajsite Oct 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@gokulprasanth-ni the nimble repo is sufficiently unusual that we'll handle the upgrade, but thanks for the initial draft

Copy link
Copy Markdown
Member

@rajsite rajsite Oct 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After sleeping on it, I think a plan to do the update in smaller parts would be:

  • One change that updates the eslint configs without changing the package types. Some configs use esm format and some use commonjs format. Also disable prettier temporarily by updating the lint and lint-concurrent scripts in package.json to not call prettier temporarily and only call eslint. Hopefully that minimizes the number of changes needed in the first PR.
  • A follow up PR where prettier is enabled and it's formatting changes are applied.

The goal being to not force nimble to switch to type module yet and to split prettier formatting changes to a separate standalone PR

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also incase it is a consideration, we should be updating the AzDo pipelines first

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah thanks for the suggestion Milan. I will plan to create PRs as suggested.

@gokulprasanth-ni gokulprasanth-ni changed the title [Draft] Update nimble packages to support flat eslint configuration format [Draft] Upgrade to eslint v9 Oct 3, 2025
@rajsite rajsite closed this Oct 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants